-
Notifications
You must be signed in to change notification settings - Fork 2.3k
Initial implementation of PushAV Stream Transport Cluster #37787
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Changed Files
|
48ff8e0 to
9d1591f
Compare
9d1591f to
79c2dbd
Compare
|
PR #37787: Size comparison from 73fe30c to 543b7e1 Full report (3 builds for cc32xx, stm32)
|
|
you need to enable this cluster in camera example app to include it into the build system |
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-server.h
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-server.h
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-server.h
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-server.h
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-server.h
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-server.h
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-server.h
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-server.h
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-server.h
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-server.h
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-server.h
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-server.h
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-server.h
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-server.cpp
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-server.cpp
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-server.cpp
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-server.h
Outdated
Show resolved
Hide resolved
70e4d07 to
421822e
Compare
|
PR #37787: Size comparison from 0e46b1d to 421822e Increases above 0.2%:
Full report (71 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
|
|
PR #37787: Size comparison from d033b40 to 116598b Increases above 0.2%:
Full report (59 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, efr32, esp32, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
|
|
@bzbarsky-apple Can you please take a look. If any further changes are required. |
src/app/clusters/push-av-stream-transport-server/CodegenIntegration.cpp
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/CodegenIntegration.cpp
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/CodegenIntegration.cpp
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-cluster.cpp
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-cluster.cpp
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-logic.cpp
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-logic.cpp
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-logic.cpp
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-logic.h
Outdated
Show resolved
Hide resolved
src/app/clusters/push-av-stream-transport-server/push-av-stream-transport-logic.h
Show resolved
Hide resolved
Restyled by clang-format
d1bab57 to
d2cdbe6
Compare
|
PR #37787: Size comparison from 252a32b to 974afed Increases above 0.2%:
Full report (57 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, efr32, esp32, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
|
|
@andy31415 this looks fully approved and ready to go, just blocked as it has the "Docker" tag (not sure why), can you take a look? |
…ip#37787) * initial implementation of pushav server * Restyled by prettier-json * add push av cluster to camera-app and some fixes * Address review comments * Check cluster specific code * remove conflict to camera example app * Restyled by clang-format * added delegate implementation in all_clusters_app * Restyled by clang-format * Restyled by prettier-json * all-clusters-app build fix * Restyled by clang-format * ci fix to include vector * update all-cluster-app to spec changes * Address review comments * Update to latest spec changes * Restyled by clang-format * Restyled by clang-format * Address review comments * Address review comments * Restyled by clang-format * update all-cluster-app.matter * Address Review Comments * Restyled by clang-format * [ESP32]: Optimize flash usage for all-clusters-app * zap_generate for updated push_av_stream_transport xml * Update Push AV server implementation for fabric-scoped transportConfigurationStruct * Address review comments * Restyled by clang-format * Common method for validation of incoming TransportOpions * Fix CI failure * Codegen Integration for Push AV Cluster * Restyled by clang-format * Add unit tests for push av * Restyled by gn * make push av logic type safe Restyled by clang-format Restyled by gn * update push av cluster unit tests * Correct namespaces * Update PushAVStreamTransport Storage tests * Split Storage tests to reduce stack usage * Command Handling fixes Restyled by clang-format --------- Co-authored-by: Restyled.io <[email protected]> Co-authored-by: marktrayer <[email protected]>
…ip#37787) * initial implementation of pushav server * Restyled by prettier-json * add push av cluster to camera-app and some fixes * Address review comments * Check cluster specific code * remove conflict to camera example app * Restyled by clang-format * added delegate implementation in all_clusters_app * Restyled by clang-format * Restyled by prettier-json * all-clusters-app build fix * Restyled by clang-format * ci fix to include vector * update all-cluster-app to spec changes * Address review comments * Update to latest spec changes * Restyled by clang-format * Restyled by clang-format * Address review comments * Address review comments * Restyled by clang-format * update all-cluster-app.matter * Address Review Comments * Restyled by clang-format * [ESP32]: Optimize flash usage for all-clusters-app * zap_generate for updated push_av_stream_transport xml * Update Push AV server implementation for fabric-scoped transportConfigurationStruct * Address review comments * Restyled by clang-format * Common method for validation of incoming TransportOpions * Fix CI failure * Codegen Integration for Push AV Cluster * Restyled by clang-format * Add unit tests for push av * Restyled by gn * make push av logic type safe Restyled by clang-format Restyled by gn * update push av cluster unit tests * Correct namespaces * Update PushAVStreamTransport Storage tests * Split Storage tests to reduce stack usage * Command Handling fixes Restyled by clang-format --------- Co-authored-by: Restyled.io <[email protected]> Co-authored-by: marktrayer <[email protected]>
This is the initial implementation of Push AV Stream Transport cluster
Delegate definition
Attributes support
Command Handling
Testing
Addition of delegate implementation in the examples/all-clusters-app to build in CI.
chip-tool:
./chip-tool pushavstreamtransport read current-connections 0x7600 1./chip-tool pushavstreamtransport read supported-formats 0x7600 1./chip-tool pushavstreamtransport allocate-push-transport '{"streamUsage":2, "videoStreamID": 1, "endpointID": 1, "url": "http://localhost:9000/", "triggerOptions": {"triggerType": 1, "motionZones": [{"zone":124},{"zone":125}],"motionSensitivity": 10, "motionTimeControl":{"initialDuration":10,"augmentationDuration":5,"maxDuration":30,"blindDuration":30}, "maxPreRollLen":10}, "ingestMethod": 0, "containerOptions": {"containerType":0, "CMAFContainerOptions":{"chunkDuration": 16124 , "CENCKey": "deadbeef", "metadataEnabled":true,"CENCKeyID":"dadabeef"} } }' 0x7600 1 --allow-large-payload trueOPTIONAL expiry time:
./chip-tool pushavstreamtransport allocate-push-transport '{"streamUsage":2, "videoStreamID": 1, "endpointID": 1, "url": "http://localhost:9000/", "triggerOptions": {"triggerType": 1, "motionZones": [{"zone":124},{"zone":125}],"motionSensitivity": 10, "motionTimeControl":{"initialDuration":10,"augmentationDuration":5,"maxDuration":30,"blindDuration":30}, "maxPreRollLen":10}, "ingestMethod": 0, "containerOptions": {"containerType":0, "CMAFContainerOptions":{"chunkDuration": 16124 , "CENCKey": "deadbeef", "metadataEnabled":true,"CENCKeyID":"dadabeef"} } ,"expiryTime":10}' 0x7600 1 --allow-large-payload true./chip-tool pushavstreamtransport modify-push-transport 1 '{"streamUsage":2, "videoStreamID": 1, "endpointID": 1, "url": "http://modifiedlocalhost:9000/", "triggerOptions": {"triggerType": 1, "motionZones": [{"zone":254},{"zone":255}],"motionSensitivity": 10, "motionTimeControl":{"initialDuration":10,"augmentationDuration":5,"maxDuration":30,"blindDuration":30}, "maxPreRollLen":10}, "ingestMethod": 0, "containerOptions": {"containerType":0, "CMAFContainerOptions":{"chunkDuration": 16124 , "CENCKey": "d0d1d2d3", "metadataEnabled":true,"CENCKeyID":"d4d5d6d7"} } ,"expiryTime":10}' 0x7600 1 --allow-large-payload true./chip-tool pushavstreamtransport find-transport 0x7600 1 --allow-large-payload true --ConnectionID 1./chip-tool pushavstreamtransport deallocate-push-transport 2 0x7600 1./chip-tool pushavstreamtransport set-transport-status 2 0 0x7600 1./chip-tool pushavstreamtransport set-transport-status null 1 0x7600 1./chip-tool pushavstreamtransport manually-trigger-transport 2 0 0x7600 1